#include "../board/Board.h"
#include "../checkers/Checkers.h"


#ifndef AI_H
#define AI_H

#define ALPHA -1000
#define BETA 1000

#define EASY 2
#define MEDIUM 3
#define HARD 4

class AI
{
public:
	// Constructor
	AI(int _difficulty_level){difficulty_level = _difficulty_level;} // Enter the difficulty level when creating an AI

	int AnalyzeMove(Checkers &yourTurn); // Analyzes the move
	int Alpha_Beta(bool maxNode, int alpha, int beta, int depth, Checkers &yourTurn, Board currentState); // finds the best move for the given turn
	void FinalMove(Checkers &yourTurn, Board currentState); // Makes the AI's move

private:
	int difficulty_level; // the maximum depth of the tree

};


#endif
